Java练习题

您所在的位置:网站首页 rabbit rabbit小狗小狗 Java练习题

Java练习题

2024-07-09 13:42| 来源: 网络整理| 查看: 265

抽象类、方法以及接口练习 一、前言二、题目三、题目分析1.画图2.接口3.抽象方法4.继承关系5.重写方法 四、代码实现1.父类2.接口3.青蛙4.小狗5.兔子6.测试类 五、测试代码六、结语

一、前言

一道题检测你是否掌握了抽象类、抽象方法和接口,相关知识点请在【Java进阶学习篇】中点击查看

二、题目

请编写带有抽象类标准的Javabean类,要求如下

属性行为青蛙Frog名字(小青蛙)、年龄(1)吃虫子、蛙泳狗Dog名字(小狗)、年龄(2)吃骨头、狗刨式游泳兔子名字(小白兔)、年龄(3)吃胡萝卜 三、题目分析 1.画图

在这里插入图片描述

2.接口

由于兔子不会游泳,并且青蛙和狗都是不同泳姿,所以swim是接口

public interface Swim { public abstract void swim(); } 3.抽象方法

由于三种动物都有吃的行为,但是吃的不一样,所以eat是抽象方法

public abstract void eat(); 4.继承关系

由于三种动物都有共同属性:名字和属性,并且有共同行为:吃,所以只需要在共同父类(Animal)中编写标准Javabean类即可

5.重写方法

在子类中,对于接口和抽象方法要进行方法体的重写,且要继承属性

四、代码实现 1.父类 public abstract class Animal { private String name; private int age; public Animal(String name, int age) { this.name = name; this.age = age; } public Animal() { } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public abstract void eat(); } 2.接口 public interface Swim { public abstract void swim(); } 3.青蛙 public class Frog extends Animal implements Swim { public Frog(String name, int age) { super(name, age); } @Override public void eat() { System.out.println("吃虫子"); } @Override public void swim() { System.out.println("蛙泳"); } } 4.小狗 public class Dog extends Animal implements Swim { public Dog(String name, int age) { super(name, age); } @Override public void eat() { System.out.println("吃骨头"); } @Override public void swim() { System.out.println("狗刨式游泳"); } } 5.兔子 public class Rabbit extends Animal{ public Rabbit(String name, int age) { super(name, age); } @Override public void eat() { System.out.println("吃胡萝卜"); } } 6.测试类 public class Test { public static void main(String[] args) { Frog f = new Frog("小青蛙",1); System.out.println(f.getName() + "今年" + f.getAge() + "岁\n它的行为有:"); f.eat(); f.swim(); System.out.println("---------------"); Dog g = new Dog("小狗",2); System.out.println(g.getName() + "今年" + g.getAge() + "岁\n它的行为有:"); g.eat(); g.swim(); System.out.println("---------------"); Rabbit r = new Rabbit("小白兔",3); System.out.println(r.getName() + "今年" + r.getAge() + "岁\n它的行为有:"); r.eat(); } } 五、测试代码

在这里插入图片描述

六、结语

在写子类时一定要记得重写方法,并且要继承属性,否则在测试类中将无法给子类对象赋值



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3